package com.ruoyi.web.mapper;

import java.awt.print.Paper;
import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.web.domain.MesInnerallotInfo;
import com.ruoyi.web.domain.MesUseDetail;
import com.ruoyi.web.domain.mes.MesCustom;
import com.ruoyi.web.domain.mes.MesMachinePaper;
import com.ruoyi.web.domain.mes.MesPaper;
import com.ruoyi.web.domain.vo.InnerAllotVo;
import com.ruoyi.web.vo.Produce;

/**
 * 纸张管理Mapper接口
 * 
 * @author levicash
 * @date 2024-01-09
 */
public interface MesPaperMapper extends BaseMapper<MesPaper>
{
    /**
     * 查询纸张管理
     * 
     * @param id 纸张管理主键
     * @return 纸张管理
     */
    public MesPaper selectMesPaperById(Long id);

    public MesPaper selectMesPaperByCode(String code);

    public MesPaper selectMesPaperNameByCode(String code);

    public List<MesPaper> selectMesPaperByIds(Long[] id);

    //纸张流转
    public List<MesPaper>  paperCirculationList(MesPaper mesPaper);
    /**
     * 查询纸张管理列表
     * 
     * @param mesPaper 纸张管理
     * @return 纸张管理集合
     */
    public List<MesPaper> selectMesPaperList(MesPaper mesPaper);

    //查询裁切组
    public List<MesPaper> cuttingGrouplist(MesPaper mesPaper);


    /**
     * 新增纸张管理
     * 
     * @param mesPaper 纸张管理
     * @return 结果
     */
    public int insertMesPaper(MesPaper mesPaper);
    public Long GetMaxId();
    /**
     * 修改纸张管理
     * 
     * @param mesPaper 纸张管理
     * @return 结果
     */
    public int updateMesPaper(MesPaper mesPaper);


    /**
     * 删除纸张管理
     * 
     * @param id 纸张管理主键
     * @return 结果
     */
    public int deleteMesPaperById(Long id);

    /**
     * 批量删除纸张管理
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteMesPaperByIds(Long[] ids);

    /**
     * 通过纸张信息名称查询纸张信息
     *
     * @param name 纸张信息名称
     * @return 纸张对象信息
     */
    public MesPaper selectMesPaperByName(String name);

    /**
     * 修改纸张管理数量
     *
     * @param mesPaper 纸张管理
     * @return 结果
     */
    public int updateMesPaperQuantity(MesPaper mesPaper);
    public int updateProducePaperUseAmount(MesUseDetail useDetail);

    public int selectMachinePaper(MesMachinePaper machinePaper);
    public int AddMachinePaper(MesMachinePaper machinePaper);
    public int updateMachinePaper(MesMachinePaper machinePaper);
    //领用裁切机台
    public int cuttingMachinePaper(MesMachinePaper machinePaper);



    public List<MesPaper> MachinePaperlist(MesPaper data);

    //批量查询机台纸库
    public List<MesMachinePaper> selectMachinePaperByIds(MesMachinePaper data);

    public List<MesMachinePaper> selectMachinePaperMode(MesMachinePaper machinePaper);

}
